/**
 * 
 */
package com.xbang.attendance.service;

import java.io.File;
import java.util.List;
import java.util.Map;

import com.xbang.core.dao.search.component.SearchComponent;
import com.xbang.core.service.BaseService;

/**
 * @author dev.zhang
 * 
 */
public interface ExcelExportService extends BaseService {

	/**
	 * 导出数据到Excel
	 * 
	 * @param hqlSentence
	 * @param searchComponent
	 * @param exportFields
	 * @return
	 * @throws Exception
	 */
	File exportExcel(String hqlSentence, SearchComponent searchComponent, List<String> exportFields) throws Exception;

	/**
	 * 导出数据到Excel
	 * 
	 * @param hqlSentence
	 * @param parameters
	 * @param exportFields
	 * @return
	 * @throws Exception
	 */
	File exportExcel(String hqlSentence, Map<String, Object> parameters, List<String> exportFields) throws Exception;

	/**
	 * 导处数据到Excel
	 * 
	 * @param hqlSentence
	 * @param searchComponent
	 * @return
	 * @throws Exception
	 */
	File exportExcel(String hqlSentence, SearchComponent searchComponent) throws Exception;

	/**
	 * 导出数据到Excel
	 * 
	 * @param hqlSentence
	 * @param parameters
	 * @return
	 * @throws Exception
	 */
	File exportExcel(String hqlSentence, Map<String, Object> parameters) throws Exception;
}
